#include #include #include void escribe_inicio(FILE *pf,char *cabecera1,char *cabecerahttp,char *cabeceraftp,char *cadena,short int *ftp); void escribe_cadena(FILE *pf,char *cadena,short int *ftp); void escribe_fin(FILE *pf,char *final,char *vacia); char *lee_cadena(void); void main(int argc,char *argv[]) { short int ftp=0; int mal=0; char vacia[]=""; char *cadena; char aviso1[]="\nBookmark Maker by FrEdY !"; char aviso2[]="\nUsage:BM . BM -h for help"; char cabecera1[]="
  • 2) { mal=1; } if(strcmp(argv[1],"-h")==0) { printf("\nThis program creates a simple HTML text to use as bookmark."); printf("\nThe format of the text lines is:"); printf("\n
  • Name "); printf("\nIf the address is ftp:// instead http:// put a - as first address letter."); printf("\nThe file will be saved as 'Bookmark.HTML' by default."); printf("\nTo finish, press RETURN at the 'Enter Address' prompt.\n"); mal=1; } if(mal!=1) { if(argc==1) { pf=fopen("Bookmark.HTML","a+"); } else { pf=fopen(argv[1],"a+"); } cadena=lee_cadena(); while((strcmp(vacia,cadena)!=0) && mal==0) { ftp=0; fflush(stdin); escribe_inicio(pf,cabecera1,cabecerahttp,cabeceraftp,cadena,&ftp); escribe_cadena(pf,cadena,&ftp); escribe_fin(pf,final,vacia); cadena=lee_cadena(); } fclose(pf); } } char *lee_cadena(void) { char *p=NULL; char aux[100]; printf("\nEnter Address:"); gets(aux); p=(char *) malloc((strlen(aux)+1)*sizeof(char)); strcpy(p,aux); return(p); } void escribe_inicio(FILE *pf,char *cabecera1,char *cabecerahttp,char *cabeceraftp,char *cadena,short int *ftp) { fputs(cabecera1,pf); fputc('"' ,pf); if(cadena[0]=='-') { fputs(cabeceraftp,pf); *ftp=1; } else { fputs(cabecerahttp,pf); } } void escribe_cadena(FILE *pf,char *cadena,short int *ftp) { int i=1; if(*ftp==0) { fputs(cadena,pf); } else { while(cadena[i]!='\0') { fputc(cadena[i],pf); i++; } } fputc('"',pf); } void escribe_fin(FILE *pf,char *final,char *vacia) { char nombre[80]; fputc('>',pf); fputc(' ',pf); printf("Enter Name for the Address:"); gets(nombre); fflush(stdin); if(strcmp(nombre,vacia)==0) { fputc('*',pf); } else { fputs(nombre,pf); } fputs(final,pf); }